package com.wsc.strategy;

/**
 * 开火策略实现
 */
public class FireStrategy {

    /**
     * 用策略模式来实现开火
     * @param type 策略器
     */
    public void fire(FireType type){
        System.out.println(type.fireType());
    }

    /**
     * 如果用 if 判断的方法来实现开火
     * 如果有新的开火方式，就要更改这个方法里的代码
     * 扩展性变得很弱
     * @param type 开火的对象
     */
    public void oldFire(String type){
        if ("手枪".equals(type)){
            System.out.println("手枪射出 0.45mm 口径子弹");
        }
        else if ("重机枪".equals(type)){
            System.out.println("重机枪射出了 4.99mm 子弹");
        }
        else if ("大炮".equals(type)){
            System.out.println("大炮射出了 10.99cm 炮弹");
        }
    }
}
